﻿<Window
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:c="MCServeCore.Components"
        xmlns:Components="clr-namespace:MCServeCore.Components;assembly=MCServeCore" xmlns:local="clr-namespace:MCServe" x:Class="MCServe.MainWindow"
        Title="MCServe"
        Height="700"
        Width="1000"
        Icon="MCserve.ico" Closed="Window_Closed_1" Background="#FFB9D1EA" WindowStartupLocation="CenterOwner">
    <Window.Resources>
        <Style TargetType="{x:Type TabControl}">
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="{x:Type TabControl}">
                        <Grid>
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition Width="Auto"/>
                                <ColumnDefinition Width="*"/>
                            </Grid.ColumnDefinitions>
                            <TabPanel Grid.Column="0"
    							Panel.ZIndex="1"
    							Margin="0,0,4,0"
    							IsItemsHost="True"
    							Background="Transparent" />
                            <Border Grid.Column="1"
    							Margin="2,2,0,0"
    							BorderThickness="0"
    							CornerRadius="5" Background="#3FFFFFFF" >
                                <ContentPresenter ContentSource="SelectedContent" />
                            </Border>
                        </Grid>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>
    </Window.Resources>
    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="1*" />
        </Grid.RowDefinitions>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="1*" />
        </Grid.ColumnDefinitions>

        <TabControl x:Name="MCServeGuiContentTabs" TabStripPlacement="Left" Margin="0" Grid.Column="0" Grid.Row="0" Grid.RowSpan="1" Background="Transparent">
            <!--
             Server Overview
             -->
            <TabItem Margin="0, 2" Height="35" Width="150"  FontSize="14" FontFamily="Segoe UI Light" x:Name="MainWindowTab_Dashboard">
                <TabItem.Header>
                    <StackPanel Width="140" Orientation="Horizontal">
                        <Image Height="15" Width="15" Source="Images/16px_dashboard.png" Stretch="Fill" />
                        <TextBlock Margin="5, 0, 0, 0" Text="Dashboard" />
                    </StackPanel>
                </TabItem.Header>
                <Grid Margin="-3">
                    <Grid.RowDefinitions>
                        <RowDefinition Height="1*" />
                        <RowDefinition Height="200" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="1*" />
                        <ColumnDefinition MinWidth="400" MaxWidth="650" />
                    </Grid.ColumnDefinitions>

                    <!--
                     Overview Chart
                     -->
                    <Label Content="Current Server Usage" VerticalAlignment="Top" Grid.Column="0" Margin="0,0,198,0" Grid.Row="0" Height="30" FontSize="16" FontFamily="Segoe UI Light"/>
                    <Grid Grid.Column="0" Margin="5, 30, 5, 0">
                        <Grid.RowDefinitions>
                            <RowDefinition Height="200" />
                            <RowDefinition Height="200" />
                        </Grid.RowDefinitions>

                        <!--
                         Server CPU Usage
                         -->
                        <Label Grid.Row="0" Content="Server CPU Usage" Margin="0, 7, 0, 171" Height="26" FontSize="12" FontFamily="Segoe UI Light"/>

                        <!--
                         Server RAM Usage
                         -->
                        <Label Grid.Row="1" Content="Server RAM Usage" Margin="0, 7, 0, 171" Height="26" FontSize="12" FontFamily="Segoe UI Light"/>
                    </Grid>

                    <!--
                     Player List
                     -->
                    <Label Content="Active Players" VerticalAlignment="Top" Grid.Column="1" Margin="0,0,198,0" Grid.Row="0" Height="30" FontSize="16" FontFamily="Segoe UI Light"/>
                    <Label Content="0 of 20 Players are online" VerticalAlignment="Top" Grid.Column="1" Margin="198,0,0,0" Grid.Row="0" Height="30" FontSize="16" FontFamily="Segoe UI Light"/>
                    <ListView IsSynchronizedWithCurrentItem="True" FontSize="12" x:Name="ListPlayerArea" Margin="0,30,0,30" Grid.Column="2" Grid.Row="0" Grid.RowSpan="1" ItemsSource="{Binding}" SelectionChanged="ListPlayerArea_SelectionChanged">
                        <ListView.ContextMenu>
                            <ContextMenu>
                                <MenuItem>
                                    <MenuItem.Icon>
                                        <Image Width="16" Height="16" Source="Images/16px_banplayer.png" />
                                    </MenuItem.Icon>
                                    <MenuItem.Header>Add player to list 'Banned Players'</MenuItem.Header>
                                </MenuItem>
                                <MenuItem>
                                    <MenuItem.Icon>
                                        <Image Width="16" Height="16" Source="Images/16px_kickplayer.png" />
                                    </MenuItem.Icon>
                                    <MenuItem.Header>Remove player from server</MenuItem.Header>
                                </MenuItem>
                                <MenuItem>
                                    <MenuItem.Icon>
                                        <Image Width="16" Height="16" Source="Images/16px_gamemode.png" />
                                    </MenuItem.Icon>
                                    <MenuItem.Header>Change the gamemode</MenuItem.Header>
                                </MenuItem>
                                <MenuItem>
                                    <MenuItem.Icon>
                                        <Image Width="16" Height="16" Source="Images/16px_giveitem.png" />
                                    </MenuItem.Icon>
                                    <MenuItem.Header>Send an item to this player</MenuItem.Header>
                                </MenuItem>
                                <MenuItem>
                                    <MenuItem.Icon>
                                        <Image Width="16" Height="16" Source="Images/16px_sendmessage.png" />
                                    </MenuItem.Icon>
                                    <MenuItem.Header>Send a message to this player</MenuItem.Header>
                                </MenuItem>
                                <MenuItem>
                                    <MenuItem.Icon>
                                        <Image Width="16" Height="16" Source="Images/16px_playerinfo.png" />
                                    </MenuItem.Icon>
                                    <MenuItem.Header>Information about this player</MenuItem.Header>
                                </MenuItem>
                            </ContextMenu>
                        </ListView.ContextMenu>
                        <ListView.View>
                            <GridView>
                                <GridViewColumn DisplayMemberBinding="{Binding Name}" Header="Name" Width="100"/>
                                <GridViewColumn DisplayMemberBinding="{Binding Clan}" Header="Clan" Width="100"/>
                                <GridViewColumn DisplayMemberBinding="{Binding Type}" Header="Type" Width="100"/>
                            </GridView>
                        </ListView.View>
                    </ListView>

                    <!--
                     Player Options
                     -->
                    <Button x:Name="MCServeDashboard_ButtonPlayerBan" IsEnabled="False" Content="Ban" Grid.Column="1" HorizontalAlignment="Left" Grid.Row="0" VerticalAlignment="Bottom" Height="25" Width="95" FontFamily="Segoe UI"/>
                    <Button x:Name="MCServeDashboard_ButtonPlayerKick" IsEnabled="False" Content="Kick" Grid.Column="1" HorizontalAlignment="Left" Margin="100,0,0,0" Grid.Row="0" VerticalAlignment="Bottom" Height="25" Width="95" FontFamily="Segoe UI"/>
                    <Button x:Name="MCServeDashboard_ButtonPlayerGamemode" IsEnabled="False" Content="Gamemode" Grid.Column="1" HorizontalAlignment="Left" Margin="200,0,0,0" Grid.Row="0" VerticalAlignment="Bottom" Height="25" Width="95" FontFamily="Segoe UI"/>
                    <Button x:Name="MCServeDashboard_ButtonPlayerGiveItem" IsEnabled="False" Content="Give Item" Grid.Column="1" HorizontalAlignment="Left" Margin="300,0,0,0" Grid.Row="0" VerticalAlignment="Bottom" Height="25" Width="95" FontFamily="Segoe UI"/>

                    <!--
                     Console Area and Message Box
                     -->
                    <Grid Grid.Column="0" Grid.Row="1">
                        <Grid.RowDefinitions>
                            <RowDefinition Height="1*" />
                            <RowDefinition Height="30" />
                        </Grid.RowDefinitions>
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="1*" />
                            <ColumnDefinition Width="80" />
                        </Grid.ColumnDefinitions>
                        <RichTextBox Grid.Column="0" Grid.Row="0" FontSize="12" FontFamily="Segoe UI" x:Name="ConsoleTextArea" Margin="5" Grid.ColumnSpan="2" AcceptsReturn="True" AcceptsTab="True" AutoWordSelection="True" IsReadOnly="True" VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto">
                            <FlowDocument>
                                <Paragraph>
                                    <Run Text="{Binding Content}"/>
                                </Paragraph>
                            </FlowDocument>
                        </RichTextBox>
                        <TextBox KeyDown="MCServeDashboard_MessageKeyEvent" Grid.Column="0" Grid.Row="1" FontFamily="Segoe UI" x:Name="MessageTextArea" Margin="5, 0, 5, 5" />
                        <Button Content="Send" Grid.Column="1" Margin="0, 0, 5, 5" Grid.Row="1" FontFamily="Segoe UI" Click="MCServeDashboard_MessageSend" Height="25" VerticalAlignment="Bottom"/>
                    </Grid>

                    <!--
                     Server Options / Server Data
                     -->
                    <Button x:Name="MCServeDashboardButton_ServerStartStop" Click="MCServeDashboard_ServerStartStop" Content="Start" HorizontalAlignment="Left" Margin="0,0,0,135" Grid.Row="1" VerticalAlignment="Bottom" Height="60"  Width="60" Grid.Column="1" FontFamily="Segoe UI"/>
                    <Button x:Name="MCServeDashboardButton_ServerRestart" Click="MCServeDashboard_ServerRestart" Content="Restart" HorizontalAlignment="Left" Margin="0,0,0,70" Grid.Row="1" VerticalAlignment="Bottom" Height="60"  Width="60" Grid.Column="1" FontFamily="Segoe UI"/>
                    <Button x:Name="MCServeDashboardButton_ServerReload" Click="MCServeDashboard_ServerReload" Content="Reload" HorizontalAlignment="Left" Margin="0,0,0,5" Grid.Row="1" VerticalAlignment="Bottom" Height="60"  Width="60" Grid.Column="1" FontFamily="Segoe UI"/>
                    <Grid Grid.Column="1" HorizontalAlignment="Left" Height="190" Margin="65,5,0,0" Grid.Row="1" VerticalAlignment="Top" Width="330">
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="150" />
                            <ColumnDefinition Width="180" />
                        </Grid.ColumnDefinitions>
                        <Grid.RowDefinitions>
                            <RowDefinition Height="30" />
                            <RowDefinition Height="30" />
                            <RowDefinition Height="30" />
                            <RowDefinition Height="30" />
                            <RowDefinition Height="30" />
                            <RowDefinition Height="30" />
                            <RowDefinition Height="1*" />
                        </Grid.RowDefinitions>
                        <Label Content="Server CPU Usage" Grid.Column="0" Grid.Row="0" />
                        <Label Content="Total CPU Usage" Grid.Column="0" Grid.Row="1" />
                        <Label Content="Server RAM Usage" Grid.Column="0" Grid.Row="2" />
                        <Label Content="Total RAM Usage" Grid.Column="0" Grid.Row="3" />
                        <Label Content="Active Players" Grid.Column="0" Grid.Row="4" />
                        <Label Content="Time since start" Grid.Column="0" Grid.Row="5" />
                        <ProgressBar Margin="5" Grid.Column="1" Grid.Row="0" Value="0" />
                        <ProgressBar Margin="5" Grid.Column="1" Grid.Row="1" Value="0"/>
                        <ProgressBar Margin="5" Grid.Column="1" Grid.Row="2" Value="0"/>
                        <ProgressBar Margin="5" Grid.Column="1" Grid.Row="3" Value="0"/>
                        <ProgressBar Margin="5" Grid.Column="1" Grid.Row="4" Value="0"/>
                        <Label Content="00:00:00" Grid.Column="1" Grid.Row="5" />
                    </Grid>
                </Grid>
            </TabItem>

            <!--
             Player Overview
             -->
            <TabItem Margin="0, 2" Height="35" Width="150" x:Name="MainWindowTab_Players" FontSize="14" FontFamily="Segoe UI Light">
                <TabItem.Header>
                    <StackPanel Width="140" Orientation="Horizontal">
                        <Image Height="15" Width="15" Stretch="Fill" Source="Images/16px_players.png" />
                        <TextBlock Margin="5, 0, 0, 0" Text="Players" />
                    </StackPanel>
                </TabItem.Header>
                <Grid Margin="-3"/>
            </TabItem>

            <!--
             Worlds Overview
             -->
            <TabItem Margin="0, 2" Height="35" Width="150" x:Name="MainWindowTab_Worlds" FontSize="14" FontFamily="Segoe UI Light">
                <TabItem.Header>
                    <StackPanel Width="140" Orientation="Horizontal">
                        <Image Height="15" Width="15" Stretch="Fill" Source="Images/16px_worlds.png" />
                        <TextBlock Margin="5, 0, 0, 0" Text="Worlds" />
                    </StackPanel>
                </TabItem.Header>
                <Grid Margin="-3"/>
            </TabItem>

            <!--
             Minecraft Properties
             -->
            <TabItem Margin="0, 2" Height="35" Width="150" x:Name="MainWindowTab_Properties" FontSize="14" FontFamily="Segoe UI Light">
                <TabItem.Header>
                    <StackPanel Width="140" Orientation="Horizontal">
                        <Image Height="15" Width="15" Stretch="Fill" Source="Images/16px_properties.png" />
                        <TextBlock Margin="5, 0, 0, 0" Text="Properties" />
                    </StackPanel>
                </TabItem.Header>
                <Grid Margin="-3">
                    <Grid.RowDefinitions>
                        <RowDefinition Height="1*" />
                        <RowDefinition Height="200" />
                    </Grid.RowDefinitions>
                    <ListView SelectionChanged="MCServePropertiesList_SelectionChanged" x:Name="MCServePropertiesList_MinecraftProperties" Grid.Row="0">
                        <ListView.View>
                            <GridView>
                                <GridViewColumn DisplayMemberBinding="{Binding Name}" Header="Object" Width="250"/>
                                <GridViewColumn DisplayMemberBinding="{Binding Value}" Header="Value" Width="350"/>
                                <GridViewColumn DisplayMemberBinding="{Binding Type}" Header="Type" Width="100"/>
                            </GridView>
                        </ListView.View>
                    </ListView>
                    <Grid Margin="5, 0" Grid.Row="1">
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="200" />
                            <ColumnDefinition Width="200" />
                            <ColumnDefinition Width="200" />
                            <ColumnDefinition Width="200" />
                            <ColumnDefinition Width="1*" />
                        </Grid.ColumnDefinitions>

                        <Label Content="Player with Op-Rank" Grid.Column="0" Margin="0, 0, 0, 0" />
                        <ListView ItemsSource="{Binding}" x:Name="MCServePropertiesList_OpPlayer" Grid.Column="0" Margin="0, 35, 5, 35" SelectionMode="Single">
                            <ListView.View>
                                <GridView>
                                    <GridViewColumn DisplayMemberBinding="{Binding Name}" Header="Name" Width="100"/>
                                </GridView>
                            </ListView.View>
                        </ListView>
                        <TextBox x:Name="MCServePropertiesTextBox_OpPlayer" Grid.Column="0" Margin="0,170,65,5" />
                        <Button Click="MCServePropertiesRemoveButton_OpPlayer_Click" x:Name="MCServePropertiesRemoveButton_OpPlayer" Content="-" Grid.Column="0" Margin="140,170,35,5" />
                        <Button Click="MCServePropertiesAddButton_OpPlayer_Click" x:Name="MCServePropertiesAddButton_OpPlayer" Content="+" Grid.Column="0" Margin="170,170,5,5" />

                        <Label Content="Player in the Whitelist" Grid.Column="1" Margin="0, 0, 0, 0" />
                        <ListView ItemsSource="{Binding}" x:Name="MCServePropertiesList_WhiteListPlayer" Grid.Column="1" Margin="0, 35, 5, 35" SelectionMode="Single">
                            <ListView.View>
                                <GridView>
                                    <GridViewColumn DisplayMemberBinding="{Binding Name}" Header="Name" Width="100"/>
                                </GridView>
                            </ListView.View>
                        </ListView>
                        <TextBox x:Name="MCServePropertiesTextBox_WhiteListPlayer" Grid.Column="1" Margin="0,170,65,5" />
                        <Button Click="MCServePropertiesRemoveButton_WhiteListPlayer_Click" x:Name="MCServePropertiesRemoveButton_WhiteListPlayer" Content="-" Grid.Column="1" Margin="140,170,35,5" />
                        <Button Click="MCServePropertiesAddButton_WhiteListPlayer_Click" x:Name="MCServePropertiesAddButton_WhiteListPlayer" Content="+" Grid.Column="1" Margin="170,170,5,5" />

                        <Label Content="Banned Players" Grid.Column="2" Margin="0, 0, 0, 0" />
                        <ListView ItemsSource="{Binding}" x:Name="MCServePropertiesList_BannedPlayer" Grid.Column="2" Margin="0, 35, 5, 35" SelectionMode="Single">
                            <ListView.View>
                                <GridView>
                                    <GridViewColumn DisplayMemberBinding="{Binding Name}" Header="Name" Width="100"/>
                                </GridView>
                            </ListView.View>
                        </ListView>
                        <TextBox x:Name="MCServePropertiesTextBox_BannedPlayer" Grid.Column="2" Margin="0,170,65,5" />
                        <Button Click="MCServePropertiesRemoveButton_BannedPlayer_Click" x:Name="MCServePropertiesRemoveButton_BannedPlayer" Content="-" Grid.Column="2" Margin="140,170,35,5" />
                        <Button Click="MCServePropertiesAddButton_BannedPlayer_Click" x:Name="MCServePropertiesAddButton_BannedPlayer" Content="+" Grid.Column="2" Margin="170,170,5,5" />

                        <Label Content="Banned IPs" Grid.Column="3" Margin="0, 0, 0, 0" />
                        <ListView ItemsSource="{Binding}" x:Name="MCServePropertiesList_BannedIp" Grid.Column="3" Margin="0, 35, 5, 35" SelectionMode="Single">
                            <ListView.View>
                                <GridView>
                                    <GridViewColumn DisplayMemberBinding="{Binding Ip}" Header="Ip" Width="100"/>
                                </GridView>
                            </ListView.View>
                        </ListView>
                        <TextBox x:Name="MCServePropertiesTextBox_BannedIp" Grid.Column="3" Margin="0,170,65,5" />
                        <Button Click="MCServePropertiesRemoveButton_BannedIp_Click" x:Name="MCServePropertiesRemoveButton_BannedIp" Content="-" Grid.Column="3" Margin="140,170,35,5" />
                        <Button Click="MCServePropertiesAddButton_BannedIp_Click" x:Name="MCServePropertiesAddButton_BannedIp" Content="+" Grid.Column="3" Margin="170,170,5,5" />

                    </Grid>
                </Grid>
            </TabItem>

            <!--
             Error Logs and Warnings
             -->
            <TabItem Margin="0, 2" Height="35" Width="150" x:Name="MainWindowTab_ServerLogs" FontSize="14" FontFamily="Segoe UI Light">
                <TabItem.Header>
                    <StackPanel Width="140" Orientation="Horizontal">
                        <Image Height="15" Width="15" Stretch="Fill" Source="Images/16px_serverlogs.png" />
                        <TextBlock Margin="5, 0, 0, 0" Text="Server Logs" />
                    </StackPanel>
                </TabItem.Header>
                <Grid Margin="-3">
                    <Grid.RowDefinitions>
                        <RowDefinition Height="10" />
                        <RowDefinition Height="1*" />
                        <RowDefinition Height="10" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="10" />
                        <ColumnDefinition Width="1*" />
                        <ColumnDefinition Width="10" />
                    </Grid.ColumnDefinitions>
                    <TabControl Grid.Column="1" Grid.Row="1" Background="Transparent" TabStripPlacement="Left">
                        <TabItem Header="server.log" Margin="0, 2" Height="28" Width="150"  FontSize="12" FontFamily="Segoe UI Light">
                            <TextBox Background="Transparent" x:Name="MCServeLogsServer" AcceptsReturn="True" AcceptsTab="True" />
                        </TabItem>
                        <TabItem Header="messages.log" Margin="0, 2" Height="28" Width="150"  FontSize="12" FontFamily="Segoe UI Light">
                            <TextBox Background="Transparent" x:Name="MCServeLogsMessages" AcceptsReturn="True" AcceptsTab="True" />
                        </TabItem>
                        <TabItem Header="warning.log" Margin="0, 2" Height="28" Width="150"  FontSize="12" FontFamily="Segoe UI Light">
                            <TextBox Background="Transparent" x:Name="MCServeLogsWarning" AcceptsReturn="True" AcceptsTab="True" />
                        </TabItem>
                        <TabItem Header="errors.log" Margin="0, 2" Height="28" Width="150"  FontSize="12" FontFamily="Segoe UI Light">
                            <TextBox Background="Transparent" x:Name="MCServeLogsErrors" AcceptsReturn="True" AcceptsTab="True" />
                        </TabItem>
                    </TabControl>
                </Grid>
            </TabItem>

            <!--
             PlugIn Manager
             -->
            <TabItem Margin="0, 2" Height="35" Width="150" x:Name="MainWindowTab_PlugIns" FontSize="14" FontFamily="Segoe UI Light">
                <TabItem.Header>
                    <StackPanel Width="140" Orientation="Horizontal">
                        <Image Height="15" Width="15" Stretch="Fill" Source="Images/16px_pluginmanager.png" />
                        <TextBlock Margin="5, 0, 0, 0" Text="PlugIn Manager" />
                    </StackPanel>
                </TabItem.Header>
                <Grid Margin="-3"/>
            </TabItem>

            <!--
             Options for Server-BackUp
             -->
            <TabItem Margin="0, 2" Height="35" Width="150" x:Name="MainWindowTab_BackUp" FontSize="14" FontFamily="Segoe UI Light">
                <TabItem.Header>
                    <StackPanel Width="140" Orientation="Horizontal">
                        <Image Height="15" Width="15" Stretch="Fill" Source="Images/16px_backup.png" />
                        <TextBlock Margin="5, 0, 0, 0" Text="BackUp" />
                    </StackPanel>
                </TabItem.Header>
                <Grid Margin="-3">
                    <Grid.RowDefinitions>
                        <RowDefinition Height="70" />
                        <RowDefinition Height="1*" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="1*" />
                    </Grid.ColumnDefinitions>
                    <Button HorizontalAlignment="Left" Content="Create BackUp" Height="60" Width="120" Grid.Row="0" Margin="5"/>
                    <Button HorizontalAlignment="Left" Content="Delete BackUp" Height="60" Width="120" Grid.Row="0" Margin="130,5,5,5"/>
                    <Button HorizontalAlignment="Right" Content="Import BackUp" Height="60" Width="120" Grid.Row="0" Margin="5, 5, 130, 5"/>
                    <Button HorizontalAlignment="Right" Content="Export BackUp" Height="60" Width="120" Grid.Row="0" Margin="5"/>

                    <ListView Grid.Row="1" Grid.Column="0"/>
                </Grid>
            </TabItem>

            <!--
             Update Manager
             -->
            <TabItem Margin="0, 2" Height="35" Width="150" x:Name="MainWindowTab_UpdateManager" FontSize="14" FontFamily="Segoe UI Light">
                <TabItem.Header>
                    <StackPanel Width="140" Orientation="Horizontal">
                        <Image Height="15" Width="15" Stretch="Fill" Source="Images/16px_updatemanager.png" />
                        <TextBlock Margin="5, 0, 0, 0" Text="Update Manager" />
                    </StackPanel>
                </TabItem.Header>
                <Grid Margin="-3"/>
            </TabItem>

            <!--
             MCServe Account
             -->
            <TabItem Margin="0, 2" Height="35" Width="150" x:Name="MainWindowTab_MCServeAccountLogin" FontSize="14" FontFamily="Segoe UI Light">
                <TabItem.Header>
                    <StackPanel Width="140" Orientation="Horizontal">
                        <Image Height="15" Width="15" Stretch="Fill" Source="Images/16px_mcserveaccount.png" />
                        <TextBlock Margin="5, 0, 0, 0" Text="MCServe Account" />
                    </StackPanel>
                </TabItem.Header>
                <Grid x:Name="MainWindowTab_MCServeAccountLoginGrid" Margin="-3">
                    <Grid.RowDefinitions>
                        <RowDefinition Height="1*" />
                        <RowDefinition Height="240" />
                        <RowDefinition Height="1*" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="1*" />
                        <ColumnDefinition Width="390" />
                        <ColumnDefinition Width="1*" />
                    </Grid.ColumnDefinitions>
                    <Grid Margin="20" Grid.Column="1" Grid.Row="1">
                        <Grid.Effect>
                            <DropShadowEffect Color="#FFCFCFCF" BlurRadius="15" Direction="90" ShadowDepth="0" RenderingBias="Quality"/>
                        </Grid.Effect>
                        <Grid.Background>
                            <LinearGradientBrush EndPoint="0.5,1" MappingMode="RelativeToBoundingBox" StartPoint="0.5,0">
                                <GradientStop Color="#FFBBBBBB" Offset="1"/>
                                <GradientStop Color="#FFDEDEDE"/>
                            </LinearGradientBrush>
                        </Grid.Background>
                    </Grid>
                    <Grid Margin="20" Grid.Column="1" Grid.Row="1">
                        <Grid.Background>
                            <LinearGradientBrush EndPoint="0.5,1" MappingMode="RelativeToBoundingBox" StartPoint="0.5,0">
                                <GradientStop Color="#FFBBBBBB" Offset="1"/>
                                <GradientStop Color="#FFDEDEDE"/>
                            </LinearGradientBrush>
                        </Grid.Background>
                        <Grid.RowDefinitions>
                            <RowDefinition Height="1*" />
                            <RowDefinition Height="50" />
                            <RowDefinition Height="50" />
                            <RowDefinition Height="50" />
                            <RowDefinition Height="1*" />
                        </Grid.RowDefinitions>
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="1*" />
                            <ColumnDefinition Width="1*" />
                        </Grid.ColumnDefinitions>

                        <TextBlock Text="Username" Grid.Column="0" Grid.Row="1" FontSize="16" Margin="5,13,5,12"/>
                        <TextBox x:Name="MCServeAccount_Username" Text="Username" Grid.Column="1" Grid.Row="1" FontSize="16" Margin="5,13,5,12" LostFocus="MCServeAccountUsername_TextBoxLostFocus" GotFocus="MCServeAccountUsername_TextBoxGotFocus"/>

                        <TextBlock Text="Password" Grid.Column="0" Grid.Row="2" FontSize="16" Margin="5,13,5,12"/>
                        <PasswordBox x:Name="MCServeAccount_Password" Password="********" Grid.Column="1" Grid.Row="2" FontSize="16" Margin="5,13,5,12" LostFocus="MCServeAccountPassword_TextBoxLostFocus" GotFocus="MCServeAccountPassword_TextBoxGotFocus"/>

                        <Button Click="MCServeAccount_Register" Margin="20, 10" Grid.Column="0" Grid.Row="3" Content="Register" />
                        <Button Click="MCServeAccount_Login" Margin="20, 10" Grid.Column="1" Grid.Row="3" Content="Login" />

                        <ProgressBar Visibility="Collapsed" x:Name="MCServeAccount_LoginProgress" IsIndeterminate="True" Grid.Column="0" Grid.Row="4" Grid.ColumnSpan="2" Margin="0, 12" Background="#00000000" />
                    </Grid>
                    <RichTextBox x:Name="MCServeAccount_Notes" Grid.Column="1" Grid.Row="2" Margin="10" Background="Transparent">
                        <FlowDocument>
                            <Paragraph>
                                <Run Text=""/>
                            </Paragraph>
                        </FlowDocument>
                    </RichTextBox>
                </Grid>
            </TabItem>
            <TabItem Margin="0, 2" Height="35" Width="150" Visibility="Collapsed" x:Name="MainWindowTab_MCServeAccountOverview" FontSize="14" FontFamily="Segoe UI Light">
                <TabItem.Header>
                    <StackPanel Width="140" Orientation="Horizontal">
                        <Image Height="15" Width="15" Stretch="Fill" Source="Images/16px_mcserveaccount.png" />
                        <TextBlock Margin="5, 0, 0, 0" Text="MCServe Account" />
                    </StackPanel>
                </TabItem.Header>
                <Grid x:Name="MainWindowTab_MCServeAccountOverviewGrid" Margin="-3"/>
            </TabItem>

            <!--
             About this Project and Versions
             -->
            <TabItem Margin="0, 2" Height="35" Width="150" x:Name="MainWindowTab_About" FontSize="14" FontFamily="Segoe UI Light">
                <TabItem.Header>
                    <StackPanel Width="140" Orientation="Horizontal">
                        <Image Height="15" Width="15" Stretch="Fill" Source="Images/16px_aboutmcserve.png" />
                        <TextBlock Margin="5, 0, 0, 0" Text="About MCServe" />
                    </StackPanel>
                </TabItem.Header>
                <Grid Margin="-3">
                    <Image Height="128" Width="128" Margin="10" HorizontalAlignment="Left" VerticalAlignment="Top" Source="Images/MCServe_128_128.png" />
                    <Image Height="40" Width="400" Margin="143,59,0,0" HorizontalAlignment="Left" VerticalAlignment="Top" Source="Images/MCServeGui_Label.png" />

                    <Label Content="GUI Version :" Width="170" Height="30" Margin="143,104,0,0" FontSize="14" FontFamily="Segoe UI Light" HorizontalAlignment="Left" VerticalAlignment="Top" />
                    <Label Content="Server Version :" Width="170" Height="30" Margin="143,139,0,0" FontSize="14" FontFamily="Segoe UI Light" HorizontalAlignment="Left" VerticalAlignment="Top" />
                    <Label Content="API Version :" Width="170" Height="30" Margin="143,174,0,0" FontSize="14" FontFamily="Segoe UI Light" HorizontalAlignment="Left" VerticalAlignment="Top" />
                    <Label Content="Library Version :" Width="170" Height="30" Margin="143,209,0,0" FontSize="14" FontFamily="Segoe UI Light" HorizontalAlignment="Left" VerticalAlignment="Top" />
                    <Label Content="Update Manager Version :" Width="170" Height="30" Margin="143,244,0,0" FontSize="14" FontFamily="Segoe UI Light" HorizontalAlignment="Left" VerticalAlignment="Top" />

                    <Label x:Name="AboutLabelVersionGui" Height="30" Margin="318,104,0,0" FontSize="14" FontFamily="Segoe UI Light" HorizontalAlignment="Left" VerticalAlignment="Top" Width="Auto" />
                    <Label x:Name="AboutLabelVersionServer" Height="30" Margin="318,139,0,0" FontSize="14" FontFamily="Segoe UI Light" HorizontalAlignment="Left" VerticalAlignment="Top" Width="Auto" />
                    <Label x:Name="AboutLabelVersionApi" Height="30" Margin="318,174,0,0" FontSize="14" FontFamily="Segoe UI Light" HorizontalAlignment="Left" VerticalAlignment="Top" Width="Auto" />
                    <Label x:Name="AboutLabelVersionLibrary" Height="30" Margin="318,209,0,0" FontSize="14" FontFamily="Segoe UI Light" HorizontalAlignment="Left" VerticalAlignment="Top" Width="Auto" />
                    <Label x:Name="AboutLabelVersionUpdateManager" Height="30" Margin="318,244,0,0" FontSize="14" FontFamily="Segoe UI Light" HorizontalAlignment="Left" VerticalAlignment="Top" Width="Auto" />
                    <Expander Header="more information" HorizontalAlignment="Left" Margin="143,300,0,0" VerticalAlignment="Top" Width="600" Height="Auto">
                        <Grid Margin="5, 10, 5, 5">
                            <Grid.RowDefinitions>
                                <RowDefinition Height="1*" />
                                <RowDefinition Height="1*" />
                                <RowDefinition Height="1*" />
                            </Grid.RowDefinitions>
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition Width="1*" />
                                <ColumnDefinition Width="1*" />
                            </Grid.ColumnDefinitions>
                            <Label Content="MCServe Properties IO Version" FontSize="14" FontFamily="Segoe UI Light" Grid.Row="0" Grid.Column="0" />
                            <Label x:Name="AboutLabelMCServePropertiesVersion" Content="" FontSize="14" FontFamily="Segoe UI Light" Grid.Row="0" Grid.Column="1" />

                            <Label Content="MCServe PlugIn API Version" FontSize="14" FontFamily="Segoe UI Light" Grid.Row="1" Grid.Column="0" />
                            <Label x:Name="AboutLabelMCServePlugInApiVersion" Content="" FontSize="14" FontFamily="Segoe UI Light" Grid.Row="1" Grid.Column="1" />

                            <Label Content="MCServe Communication Protocol Version" FontSize="14" FontFamily="Segoe UI Light" Grid.Row="2" Grid.Column="0" />
                            <Label x:Name="AboutLabelMCServeCommunicationProtocolVersion" Content="" FontSize="14" FontFamily="Segoe UI Light" Grid.Row="2" Grid.Column="1" />
                        </Grid>
                    </Expander>
                </Grid>
            </TabItem>
        </TabControl>
    </Grid>
</Window>
<!--
    This is a part of MCServe, which is available under the Apache license 2.0.
    With this code, you may do whatever you want as long as that is not in conflict with this license.
    In addition, you should have a reference to the original project to include (http://mcserve.codeplex.com).
    
    Author       : Lars Krämer ( Xe77a )
    Website      : http://www.lkraemer.de
    Project      : MCServe (http://mcserve.codeplex.com)
    Copyright    : Copyright (c) 2013 lkraemer.de
    License      : http://mcserve.codeplex.com/license
    Description  : This part contains the window environment
    -->